package com.mycar2w.cloud.entity;

import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * created time 2017/4/1
 *
 * @author ljc
 * @version V1.0
 * 汽车外饰
 */
@Entity
@Table(name = "car_out_configuration", schema = "mycar2wnew", catalog = "")
public class CarOutConfiguration {
    private Long id;
    private String electricSunroof;
    private String panoramicSunroof;
    private String electricDoor;
    private String inductionTrunk;
    private String inductionWiper;
    private String rearWiper;
    private String frontAndRearPowerWindows;
    private String rearviewMirrorElectricAdjustment;
    private String rearviewMirrorHeating;
    private Long carId;

    @Id
    @Column(name = "id", nullable = false)
    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    @Basic
    @Column(name = "electric_sunroof", nullable = true, length = 50)
    public String getElectricSunroof() {
        return electricSunroof;
    }

    public void setElectricSunroof(String electricSunroof) {
        this.electricSunroof = electricSunroof;
    }

    @Basic
    @Column(name = "panoramic_sunroof", nullable = true, length = 50)
    public String getPanoramicSunroof() {
        return panoramicSunroof;
    }

    public void setPanoramicSunroof(String panoramicSunroof) {
        this.panoramicSunroof = panoramicSunroof;
    }

    @Basic
    @Column(name = "electric_door", nullable = true, length = 50)
    public String getElectricDoor() {
        return electricDoor;
    }

    public void setElectricDoor(String electricDoor) {
        this.electricDoor = electricDoor;
    }

    @Basic
    @Column(name = "induction_trunk", nullable = true, length = 50)
    public String getInductionTrunk() {
        return inductionTrunk;
    }

    public void setInductionTrunk(String inductionTrunk) {
        this.inductionTrunk = inductionTrunk;
    }

    @Basic
    @Column(name = "induction_wiper", nullable = true, length = 50)
    public String getInductionWiper() {
        return inductionWiper;
    }

    public void setInductionWiper(String inductionWiper) {
        this.inductionWiper = inductionWiper;
    }

    @Basic
    @Column(name = "rear_wiper", nullable = true, length = 50)
    public String getRearWiper() {
        return rearWiper;
    }

    public void setRearWiper(String rearWiper) {
        this.rearWiper = rearWiper;
    }

    @Basic
    @Column(name = "front_and_rear_power_windows", nullable = true, length = 50)
    public String getFrontAndRearPowerWindows() {
        return frontAndRearPowerWindows;
    }

    public void setFrontAndRearPowerWindows(String frontAndRearPowerWindows) {
        this.frontAndRearPowerWindows = frontAndRearPowerWindows;
    }

    @Basic
    @Column(name = "rearview_mirror_electric_adjustment", nullable = true, length = 50)
    public String getRearviewMirrorElectricAdjustment() {
        return rearviewMirrorElectricAdjustment;
    }

    public void setRearviewMirrorElectricAdjustment(String rearviewMirrorElectricAdjustment) {
        this.rearviewMirrorElectricAdjustment = rearviewMirrorElectricAdjustment;
    }

    @Basic
    @Column(name = "rearview_mirror_heating", nullable = true, length = 50)
    public String getRearviewMirrorHeating() {
        return rearviewMirrorHeating;
    }

    public void setRearviewMirrorHeating(String rearviewMirrorHeating) {
        this.rearviewMirrorHeating = rearviewMirrorHeating;
    }

    @Basic
    @Column(name = "car_id", nullable = true)
    public Long getCarId() {
        return carId;
    }

    public void setCarId(Long carId) {
        this.carId = carId;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        CarOutConfiguration that = (CarOutConfiguration) o;

        if (id != null ? !id.equals(that.id) : that.id != null) return false;
        if (electricSunroof != null ? !electricSunroof.equals(that.electricSunroof) : that.electricSunroof != null)
            return false;
        if (panoramicSunroof != null ? !panoramicSunroof.equals(that.panoramicSunroof) : that.panoramicSunroof != null)
            return false;
        if (electricDoor != null ? !electricDoor.equals(that.electricDoor) : that.electricDoor != null) return false;
        if (inductionTrunk != null ? !inductionTrunk.equals(that.inductionTrunk) : that.inductionTrunk != null)
            return false;
        if (inductionWiper != null ? !inductionWiper.equals(that.inductionWiper) : that.inductionWiper != null)
            return false;
        if (rearWiper != null ? !rearWiper.equals(that.rearWiper) : that.rearWiper != null) return false;
        if (frontAndRearPowerWindows != null ? !frontAndRearPowerWindows.equals(that.frontAndRearPowerWindows) : that.frontAndRearPowerWindows != null)
            return false;
        if (rearviewMirrorElectricAdjustment != null ? !rearviewMirrorElectricAdjustment.equals(that.rearviewMirrorElectricAdjustment) : that.rearviewMirrorElectricAdjustment != null)
            return false;
        if (rearviewMirrorHeating != null ? !rearviewMirrorHeating.equals(that.rearviewMirrorHeating) : that.rearviewMirrorHeating != null)
            return false;
        if (carId != null ? !carId.equals(that.carId) : that.carId != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = id != null ? id.hashCode() : 0;
        result = 31 * result + (electricSunroof != null ? electricSunroof.hashCode() : 0);
        result = 31 * result + (panoramicSunroof != null ? panoramicSunroof.hashCode() : 0);
        result = 31 * result + (electricDoor != null ? electricDoor.hashCode() : 0);
        result = 31 * result + (inductionTrunk != null ? inductionTrunk.hashCode() : 0);
        result = 31 * result + (inductionWiper != null ? inductionWiper.hashCode() : 0);
        result = 31 * result + (rearWiper != null ? rearWiper.hashCode() : 0);
        result = 31 * result + (frontAndRearPowerWindows != null ? frontAndRearPowerWindows.hashCode() : 0);
        result = 31 * result + (rearviewMirrorElectricAdjustment != null ? rearviewMirrorElectricAdjustment.hashCode() : 0);
        result = 31 * result + (rearviewMirrorHeating != null ? rearviewMirrorHeating.hashCode() : 0);
        result = 31 * result + (carId != null ? carId.hashCode() : 0);
        return result;
    }
}
